package com.openecommerce.api.domain;

import java.util.Date;
/**
 * 
 *订单商品项实体类
 * @author Tommy
 *
 */
public class OrderItem {
	//订单商品项ID
    private Long orderItemId;
	//订单ID
    private Long orderId;
	//购物车ID
    private Long cartId;
	//创建时间
    private Date createdAt;
	//更新时间
    private Date updatedAt;
	//商品ID
    private Long productId;
	//商品类型
    private String productType;
	//商品可选属性
    private String productOptions;
	//商品重量
    private Double weight;
	//是否为虚拟商品
    private Short isVirtual;
	//商品SKU
    private String sku;
	//商品名称
    private String name;
    //促销规则
    private String appliedRuleIds;
	//是否免邮
    private Short freeShipping;
	//商品数量是否为十进制
    private Short isQtyDecimal;
	//是否没有折扣
    private Short noDiscount;
	//取消数量
    private Integer qtyCanceled;
    //开发票数量
    private Integer qtyInvoiced;
    //下单数量
    private Integer qtyOrdered;
    //退货数量
    private Integer qtyRefunded;
    //发货数量
    private Integer qtyShipped;
	//总价
    // maybe it's baseCost
    private Double cost;
	//商品单价
    private Double price;
	//商品原价
    private Double originalPrice;
	//商品折扣率
    private Double discountPercent;
	//商品折扣金额
    private Double discountAmount;
    //折扣后发票金额
    private Double discountInvoiced;
    //退货金额
    private Double amountRefunded;

    private Double rowTotal;

    private Double rowInvoiced;

    private Double rowWeight;

    public Long getOrderItemId() {
        return orderItemId;
    }

    public void setOrderItemId(Long orderItemId) {
        this.orderItemId = orderItemId;
    }

    public Long getOrderId() {
        return orderId;
    }

    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    public Long getCartId() {
        return cartId;
    }

    public void setCartId(Long cartId) {
        this.cartId = cartId;
    }

    public Date getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    public Date getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(Date updatedAt) {
        this.updatedAt = updatedAt;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public String getProductType() {
        return productType;
    }

    public void setProductType(String productType) {
        this.productType = productType == null ? null : productType.trim();
    }

    public String getProductOptions() {
        return productOptions;
    }

    public void setProductOptions(String productOptions) {
        this.productOptions = productOptions == null ? null : productOptions.trim();
    }

    public Double getWeight() {
        return weight;
    }

    public void setWeight(Double weight) {
        this.weight = weight;
    }

    public Short getIsVirtual() {
        return isVirtual;
    }

    public void setIsVirtual(Short isVirtual) {
        this.isVirtual = isVirtual;
    }

    public String getSku() {
        return sku;
    }

    public void setSku(String sku) {
        this.sku = sku == null ? null : sku.trim();
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name == null ? null : name.trim();
    }

    public String getAppliedRuleIds() {
        return appliedRuleIds;
    }

    public void setAppliedRuleIds(String appliedRuleIds) {
        this.appliedRuleIds = appliedRuleIds == null ? null : appliedRuleIds.trim();
    }

    public Short getFreeShipping() {
        return freeShipping;
    }

    public void setFreeShipping(Short freeShipping) {
        this.freeShipping = freeShipping;
    }

    public Short getIsQtyDecimal() {
        return isQtyDecimal;
    }

    public void setIsQtyDecimal(Short isQtyDecimal) {
        this.isQtyDecimal = isQtyDecimal;
    }

    public Short getNoDiscount() {
        return noDiscount;
    }

    public void setNoDiscount(Short noDiscount) {
        this.noDiscount = noDiscount;
    }

    public Integer getQtyCanceled() {
        return qtyCanceled;
    }

    public void setQtyCanceled(Integer qtyCanceled) {
        this.qtyCanceled = qtyCanceled;
    }

    public Integer getQtyInvoiced() {
        return qtyInvoiced;
    }

    public void setQtyInvoiced(Integer qtyInvoiced) {
        this.qtyInvoiced = qtyInvoiced;
    }

    public Integer getQtyOrdered() {
        return qtyOrdered;
    }

    public void setQtyOrdered(Integer qtyOrdered) {
        this.qtyOrdered = qtyOrdered;
    }

    public Integer getQtyRefunded() {
        return qtyRefunded;
    }

    public void setQtyRefunded(Integer qtyRefunded) {
        this.qtyRefunded = qtyRefunded;
    }

    public Integer getQtyShipped() {
        return qtyShipped;
    }

    public void setQtyShipped(Integer qtyShipped) {
        this.qtyShipped = qtyShipped;
    }

    public Double getCost() {
        return cost;
    }

    public void setCost(Double cost) {
        this.cost = cost;
    }

    public Double getPrice() {
        return price;
    }

    public void setPrice(Double price) {
        this.price = price;
    }

    public Double getOriginalPrice() {
        return originalPrice;
    }

    public void setOriginalPrice(Double originalPrice) {
        this.originalPrice = originalPrice;
    }

    public Double getDiscountPercent() {
        return discountPercent;
    }

    public void setDiscountPercent(Double discountPercent) {
        this.discountPercent = discountPercent;
    }

    public Double getDiscountAmount() {
        return discountAmount;
    }

    public void setDiscountAmount(Double discountAmount) {
        this.discountAmount = discountAmount;
    }

    public Double getDiscountInvoiced() {
        return discountInvoiced;
    }

    public void setDiscountInvoiced(Double discountInvoiced) {
        this.discountInvoiced = discountInvoiced;
    }

    public Double getAmountRefunded() {
        return amountRefunded;
    }

    public void setAmountRefunded(Double amountRefunded) {
        this.amountRefunded = amountRefunded;
    }

    public Double getRowTotal() {
        return rowTotal;
    }

    public void setRowTotal(Double rowTotal) {
        this.rowTotal = rowTotal;
    }

    public Double getRowInvoiced() {
        return rowInvoiced;
    }

    public void setRowInvoiced(Double rowInvoiced) {
        this.rowInvoiced = rowInvoiced;
    }

    public Double getRowWeight() {
        return rowWeight;
    }

    public void setRowWeight(Double rowWeight) {
        this.rowWeight = rowWeight;
    }
}